import { IPSAppDEAction } from './ipsapp-deaction';
import { IPSAppDELogic } from './ipsapp-delogic';
import { IPSAppDEMethodLogic } from './ipsapp-demethod-logic';
import { IPSAppDataEntity } from './ipsapp-data-entity';

/**
 *
 * @export
 * @interface IPSAppDEActionLogic
 */
export interface IPSAppDEActionLogic extends IPSAppDEMethodLogic {
  /**
   * 触发目标行为
   *
   * @type {IPSAppDEAction}
   */
  getDstPSAppDEAction(): IPSAppDEAction | null;

  /**
   * 目标行为所属实体
   *
   * @type {IPSAppDataEntity}
   */
  getDstPSAppDataEntity(): IPSAppDataEntity | null;

  /**
   * 应用实体逻辑
   *
   * @type {IPSAppDELogic}
   */
  getPSAppDELogic(): IPSAppDELogic | null;

  /**
   * 克隆传入参数
   * @type {boolean}
   * @default false
   */
  cloneParam: boolean;

  /**
   * 内部逻辑
   * @type {boolean}
   * @default false
   */
  internalLogic: boolean;
}
